The disclosures herein relate generally to information handling systems and in particular to a method and system for processing a loop of instructions.
In evolution of an information handling system, compatibility is desirable, so that a later version of the system may efficiently process a software program that is originally prepared for an earlier version of the system (“legacy software program”). For example, the system may process a loop of instructions. For a repeated pass through the loop, the system may encounter a need to repeatedly fetch instructions at the start of the loop. Such a need may result from (a) a practical constraint on size of the system's instruction fetch buffer and/or (b) a large number of instructions in the loop.
To reduce a likelihood of delay from such a repeated fetch, one technique uses a particular type of instruction for triggering the repeated fetch at a suitable moment during a pass through the loop. Nevertheless, within a software program, such instruction's placement is adapted for a particular version of the system. A different version of the system might process the software program less efficiently, unless such instruction's placement is revised for the different version. Unfortunately, such revision of the software program is potentially time-consuming, expensive and otherwise inefficient.
A need has arisen for a method and system for processing a loop of instructions, in which various shortcomings of previous techniques are overcome. For example, a need has arisen for a method and system for processing a loop of instructions, in which processing of a legacy software program is more efficient.